package org.jeecg.modules.activiti.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @Description: 待办任务扩展表
 * @Author: qixin-boot
 * @Date:   2022-02-08
 * @Version: V1.0
 */
@Data
@TableName("act_z_task")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="act_z_task对象", description="待办任务扩展表")
public class ActZTask implements Serializable {
    private static final long serialVersionUID = 1L;

	/**id*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "id")
    private String id;
	/**创建时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
	/**发起人id*/
	@Excel(name = "发起人id", width = 15)
    @ApiModelProperty(value = "发起人id")
    private String sendId;
	/**审批人id*/
	@Excel(name = "审批人id", width = 15)
    @ApiModelProperty(value = "审批人id")
    private String ownerId;
	/**审批人名称*/
	@Excel(name = "审批人名称", width = 15)
    @ApiModelProperty(value = "审批人名称")
    private String ownerName;
	/**流程状态:0未提交,1审批中,2已完成,3已退回*/
	@Excel(name = "流程状态", width = 15)
    @ApiModelProperty(value = "流程状态:0未提交,1审批中,2已完成,3已退回")
    private Integer state;
	/**单据id*/
	@Excel(name = "单据id", width = 15)
    @ApiModelProperty(value = "单据id")
    private String tableId;
	/**流程标题*/
	@Excel(name = "流程标题", width = 15)
    @ApiModelProperty(value = "流程标题")
    private String title;
	/**发送时间*/
	@Excel(name = "发送时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "发送时间")
    private Date receiveTime;
	/**修改时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "修改时间")
    private Date updateTime;
	/**工作流任务id*/
	@Excel(name = "工作流任务id", width = 15)
    @ApiModelProperty(value = "工作流任务id")
    private String taskId;
	/**流程实例id*/
	@Excel(name = "流程实例id", width = 15)
    @ApiModelProperty(value = "流程实例id")
    private String procInstId;
	/**发起人名称*/
	@Excel(name = "发起人名称", width = 15)
    @ApiModelProperty(value = "发起人名称")
    private String sendName;
	/**审批时间*/
	@Excel(name = "审批时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "审批时间")
    private Date auditTime;
	/**审批意见*/
	@Excel(name = "审批意见", width = 15)
    @ApiModelProperty(value = "审批意见")
    private String auditComment;
	/**所属流程d*/
	@Excel(name = "所属流程d", width = 15)
    @ApiModelProperty(value = "所属流程d")
    private String processId;
	/**总金额*/
	@Excel(name = "总金额", width = 15)
    @ApiModelProperty(value = "总金额")
    private BigDecimal totalFee;
	/**备注*/
	@Excel(name = "备注", width = 15)
    @ApiModelProperty(value = "备注")
    private String memo;
    /**流程节点名称*/
    @Excel(name = "流程节点名称", width = 15)
    @ApiModelProperty(value = "流程节点名称")
    private String nodeName;
    /**节点状态：0未处理1已处理d*/
    @Excel(name = "节点状态", width = 15)
    @ApiModelProperty(value = "节点状态：0未处理1已处理")
    private Integer nodeState;
    /**流程节点名称*/
    @Excel(name = "关联前端表单路由名", width = 15)
    @ApiModelProperty(value = "关联前端表单路由名")
    private String routeName;
    /**序号(用来获取下节点办理人)*/
    @Excel(name = "序号", width = 15)
    @ApiModelProperty(value = "序号")
    private Integer serial;
}
